using System;
using System.Collections.Generic;
using ns26;
using ns27;
using Triton.Game.Mono;

namespace Triton.Game.Mapping
{
	[Attribute38("GeneralStorePacksContent")]
	public class GeneralStorePacksContent : GeneralStoreContent
	{
		[Attribute38("GeneralStorePacksContent.ToggleableButtonFrame")]
		public class ToggleableButtonFrame : MonoClass
		{
			public GameObject m_Middle => method_3<GameObject>("m_Middle");

			public GameObject m_IBar => method_3<GameObject>("m_IBar");

			public ToggleableButtonFrame(IntPtr address, string className)
				: base(address, className)
			{
			}

			public ToggleableButtonFrame(IntPtr address)
				: this(address, "ToggleableButtonFrame")
			{
			}
		}

		[Attribute38("GeneralStorePacksContent.MultiSliceEndCaps")]
		public class MultiSliceEndCaps : MonoClass
		{
			public GameObject m_FullBar => method_3<GameObject>("m_FullBar");

			public GameObject m_SmallerBar => method_3<GameObject>("m_SmallerBar");

			public MultiSliceEndCaps(IntPtr address, string className)
				: base(address, className)
			{
			}

			public MultiSliceEndCaps(IntPtr address)
				: this(address, "MultiSliceEndCaps")
			{
			}
		}

		public enum LogoAnimation
		{
			None,
			Slam,
			Fade
		}

		public StoreQuantityPrompt m_quantityPrompt => method_3<StoreQuantityPrompt>("m_quantityPrompt");

		public GameObject m_packContainer => method_3<GameObject>("m_packContainer");

		public GameObject m_packEmptyDisplay => method_3<GameObject>("m_packEmptyDisplay");

		public GeneralStorePacksContentDisplay m_packDisplay => method_3<GeneralStorePacksContentDisplay>("m_packDisplay");

		public GameObject m_packBuyContainer => method_3<GameObject>("m_packBuyContainer");

		public MultiSliceElement m_packBuyButtonContainer => method_3<MultiSliceElement>("m_packBuyButtonContainer");

		public GeneralStorePackBuyButton m_packBuyButtonPrefab => method_3<GeneralStorePackBuyButton>("m_packBuyButtonPrefab");

		public MultiSliceElement m_packBuyFrameContainer => method_3<MultiSliceElement>("m_packBuyFrameContainer");

		public List<ToggleableButtonFrame> m_toggleableButtonFrames => method_3<Class271<ToggleableButtonFrame>>("m_toggleableButtonFrames")?.method_25();

		public List<MultiSliceEndCaps> m_buyBarEndCaps => method_3<Class271<MultiSliceEndCaps>>("m_buyBarEndCaps")?.method_25();

		public GameObject m_packBuyPreorderContainer => method_3<GameObject>("m_packBuyPreorderContainer");

		public GeneralStorePackBuyButton m_packBuyPreorderButton => method_3<GeneralStorePackBuyButton>("m_packBuyPreorderButton");

		public UberText m_availableDateText => method_3<UberText>("m_availableDateText");

		public UIBButton m_ChinaInfoButton => method_3<UIBButton>("m_ChinaInfoButton");

		public int m_maxPackBuyButtons => method_2<int>("m_maxPackBuyButtons");

		public LogoAnimation m_logoAnimation => method_2<LogoAnimation>("m_logoAnimation");

		public float m_packFlyOutAnimTime => method_2<float>("m_packFlyOutAnimTime");

		public float m_packFlyOutDelay => method_2<float>("m_packFlyOutDelay");

		public float m_packFlyInAnimTime => method_2<float>("m_packFlyInAnimTime");

		public float m_packFlyInDelay => method_2<float>("m_packFlyInDelay");

		public float m_boxFlyOutAnimTime => method_2<float>("m_boxFlyOutAnimTime");

		public float m_boxFlyOutDelay => method_2<float>("m_boxFlyOutDelay");

		public float m_boxFlyInAnimTime => method_2<float>("m_boxFlyInAnimTime");

		public float m_boxFlyInDelay => method_2<float>("m_boxFlyInDelay");

		public float m_boxFlyInXShake => method_2<float>("m_boxFlyInXShake");

		public float m_boxStoreImpactTranslation => method_2<float>("m_boxStoreImpactTranslation");

		public float m_shakeObjectDelayMultiplier => method_2<float>("m_shakeObjectDelayMultiplier");

		public float m_backgroundFlipAnimTime => method_2<float>("m_backgroundFlipAnimTime");

		public float m_maxPackFlyInXShake => method_2<float>("m_maxPackFlyInXShake");

		public float m_maxPackFlyOutXShake => method_2<float>("m_maxPackFlyOutXShake");

		public float m_packFlyShakeTime => method_2<float>("m_packFlyShakeTime");

		public float m_backgroundFlipShake => method_2<float>("m_backgroundFlipShake");

		public float m_backgroundFlipShakeDelay => method_2<float>("m_backgroundFlipShakeDelay");

		public float m_PackYDegreeVariationMag => method_2<float>("m_PackYDegreeVariationMag");

		public float m_BoxYDegreeVariationMag => method_2<float>("m_BoxYDegreeVariationMag");

		public GameObject m_logoAnimationStartBone => method_3<GameObject>("m_logoAnimationStartBone");

		public GameObject m_logoAnimationEndBone => method_3<GameObject>("m_logoAnimationEndBone");

		public MeshRenderer m_logoMesh => method_3<MeshRenderer>("m_logoMesh");

		public MeshRenderer m_logoGlowMesh => method_3<MeshRenderer>("m_logoGlowMesh");

		public Vector3 m_punchAmount => method_2<Vector3>("m_punchAmount");

		public float m_logoHoldTime => method_2<float>("m_logoHoldTime");

		public float m_logoDisplayPunchTime => method_2<float>("m_logoDisplayPunchTime");

		public float m_logoIntroTime => method_2<float>("m_logoIntroTime");

		public float m_logoOutroTime => method_2<float>("m_logoOutroTime");

		public Vector3 m_logoAppearOffset => method_2<Vector3>("m_logoAppearOffset");

		public GeneralStoreRewardsCardBack m_preorderCardBackReward => method_3<GeneralStoreRewardsCardBack>("m_preorderCardBackReward");

		public string m_backgroundFlipSound => method_4("m_backgroundFlipSound");

		public static bool REQUIRE_REAL_MONEY_BUNDLE_OPTION => MonoClass.smethod_6<bool>(TritonHs.MainAssemblyPath, "", "GeneralStorePacksContent", "REQUIRE_REAL_MONEY_BUNDLE_OPTION");

		public static int MAX_QUANTITY_BOUGHT_WITH_GOLD => MonoClass.smethod_6<int>(TritonHs.MainAssemblyPath, "", "GeneralStorePacksContent", "MAX_QUANTITY_BOUGHT_WITH_GOLD");

		public static float FIRST_PURCHASE_BUNDLE_INIT_DELAY => MonoClass.smethod_6<float>(TritonHs.MainAssemblyPath, "", "GeneralStorePacksContent", "FIRST_PURCHASE_BUNDLE_INIT_DELAY");

		public int m_selectedBoosterId => method_2<int>("m_selectedBoosterId");

		public List<GeneralStorePackBuyButton> m_packBuyButtons => method_3<Class271<GeneralStorePackBuyButton>>("m_packBuyButtons")?.method_25();

		public int m_currentGoldPackQuantity => method_2<int>("m_currentGoldPackQuantity");

		public int m_visiblePackCount => method_2<int>("m_visiblePackCount");

		public int m_visibleDustCount => method_2<int>("m_visibleDustCount");

		public bool m_selectedBoosterIsPrePurchase => method_2<bool>("m_selectedBoosterIsPrePurchase");

		public int m_lastBundleIndex => method_2<int>("m_lastBundleIndex");

		public int m_currentDisplay => method_2<int>("m_currentDisplay");

		public static string PREV_PLAYLIST_NAME => MonoClass.smethod_8(TritonHs.MainAssemblyPath, "", "GeneralStorePacksContent", "PREV_PLAYLIST_NAME");

		public GeneralStorePacksContentDisplay m_packDisplay1 => method_3<GeneralStorePacksContentDisplay>("m_packDisplay1");

		public GeneralStorePacksContentDisplay m_packDisplay2 => method_3<GeneralStorePacksContentDisplay>("m_packDisplay2");

		public MeshRenderer m_logoMesh1 => method_3<MeshRenderer>("m_logoMesh1");

		public MeshRenderer m_logoMesh2 => method_3<MeshRenderer>("m_logoMesh2");

		public MeshRenderer m_logoGlowMesh1 => method_3<MeshRenderer>("m_logoGlowMesh1");

		public MeshRenderer m_logoGlowMesh2 => method_3<MeshRenderer>("m_logoGlowMesh2");

		public Vector3 m_savedLocalPosition => method_2<Vector3>("m_savedLocalPosition");

		public Vector3 m_availableDateTextOrigScale => method_2<Vector3>("m_availableDateTextOrigScale");

		public bool m_animatingLogo => method_2<bool>("m_animatingLogo");

		public bool m_animatingPacks => method_2<bool>("m_animatingPacks");

		public bool m_hasLogo => method_2<bool>("m_hasLogo");

		public bool m_waitingForBoxAnim => method_2<bool>("m_waitingForBoxAnim");

		public bool m_loadingLogoTexture => method_2<bool>("m_loadingLogoTexture");

		public bool m_loadingLogoGlowTexture => method_2<bool>("m_loadingLogoGlowTexture");

		public GeneralStorePacksContent(IntPtr address, string className)
			: base(address, className)
		{
		}

		public GeneralStorePacksContent(IntPtr address)
			: this(address, "GeneralStorePacksContent")
		{
		}

		public new void PostStoreFlipIn(bool animatedFlipIn)
		{
			method_8("PostStoreFlipIn", animatedFlipIn);
		}

		public new void PreStoreFlipOut()
		{
			method_8("PreStoreFlipOut");
		}

		public new void StoreShown(bool isCurrent)
		{
			method_8("StoreShown", isCurrent);
		}

		public new void StoreHidden(bool isCurrent)
		{
			method_8("StoreHidden", isCurrent);
		}

		public new bool IsPurchaseDisabled()
		{
			return method_11<bool>("IsPurchaseDisabled", Array.Empty<object>());
		}

		public new string GetMoneyDisplayOwnedText()
		{
			return method_13("GetMoneyDisplayOwnedText");
		}

		public void SetBoosterId(int id, bool forceImmediate, bool InitialSelection)
		{
			method_8("SetBoosterId", id, forceImmediate, InitialSelection);
		}

		public int GetBoosterId()
		{
			return method_11<int>("GetBoosterId", Array.Empty<object>());
		}

		public void FirstPurchaseBundlePurchased(CardReward cardReward)
		{
			method_8("FirstPurchaseBundlePurchased", cardReward);
		}

		public StorePackDef GetStorePackDef(int packDbId)
		{
			return method_14<StorePackDef>("GetStorePackDef", new object[1] { packDbId });
		}

		public void ShakeStore(int numPacks, float maxXRotation, float delay, float translationAmount)
		{
			method_8("ShakeStore", numPacks, maxXRotation, delay, translationAmount);
		}

		public new void OnBundleChanged(NoGTAPPTransactionData goldBundle, Network.Bundle moneyBundle)
		{
			method_8("OnBundleChanged", goldBundle, moneyBundle);
		}

		public new void OnRefresh()
		{
			method_8("OnRefresh");
		}

		public void Awake()
		{
			method_8("Awake");
		}

		public GameObject GetCurrentDisplayContainer()
		{
			return method_14<GameObject>("GetCurrentDisplayContainer", Array.Empty<object>());
		}

		public GameObject GetNextDisplayContainer()
		{
			return method_14<GameObject>("GetNextDisplayContainer", Array.Empty<object>());
		}

		public GeneralStorePacksContentDisplay GetCurrentDisplay()
		{
			return method_14<GeneralStorePacksContentDisplay>("GetCurrentDisplay", Array.Empty<object>());
		}

		public MeshRenderer GetCurrentLogo()
		{
			return method_14<MeshRenderer>("GetCurrentLogo", Array.Empty<object>());
		}

		public MeshRenderer GetCurrentGlowLogo()
		{
			return method_14<MeshRenderer>("GetCurrentGlowLogo", Array.Empty<object>());
		}

		public void UpdateSelectedBundle(bool forceUpdate)
		{
			method_8("UpdateSelectedBundle", forceUpdate);
		}

		public void UpdatePacksDescription()
		{
			method_8("UpdatePacksDescription");
		}

		public NoGTAPPTransactionData GetCurrentGTAPPTransactionData()
		{
			return method_14<NoGTAPPTransactionData>("GetCurrentGTAPPTransactionData", Array.Empty<object>());
		}

		public void UpdatePackBuyButtons()
		{
			method_8("UpdatePackBuyButtons");
		}

		public void ShowStandardBuyButtons()
		{
			method_8("ShowStandardBuyButtons");
		}

		public void ShowFirstPurchaseBundleBuyButtons(Network.Bundle bundle)
		{
			method_8("ShowFirstPurchaseBundleBuyButtons", bundle);
		}

		public void ShowPreorderBuyButtons(Network.Bundle preOrderBundle)
		{
			method_8("ShowPreorderBuyButtons", preOrderBundle);
		}

		public void UpdatePacksTypeMusic()
		{
			method_8("UpdatePacksTypeMusic");
		}

		public void HandleGoldPackBuyButtonClick()
		{
			method_8("HandleGoldPackBuyButtonClick");
		}

		public void HandleGoldPackBuyButtonDoubleClick(GeneralStorePackBuyButton button)
		{
			method_8("HandleGoldPackBuyButtonDoubleClick", button);
		}

		public void HandleMoneyPackBuyButtonClick(int bundleIndex)
		{
			method_8("HandleMoneyPackBuyButtonClick", bundleIndex);
		}

		public void SelectPackBuyButton(GeneralStorePackBuyButton packBuyBtn)
		{
			method_8("SelectPackBuyButton", packBuyBtn);
		}

		public GeneralStorePackBuyButton GetPackBuyButton(int index)
		{
			return method_14<GeneralStorePackBuyButton>("GetPackBuyButton", new object[1] { index });
		}

		public GeneralStorePackBuyButton CreatePackBuyButton(int buttonIndex)
		{
			return method_14<GeneralStorePackBuyButton>("CreatePackBuyButton", new object[1] { buttonIndex });
		}

		public List<Network.Bundle> GetPackBundles(bool sortByPackQuantity)
		{
			return method_14<Class271<Network.Bundle>>("GetPackBundles", new object[1] { sortByPackQuantity })?.method_25();
		}

		public void AnimateLogo(bool animateLogo)
		{
			method_8("AnimateLogo", animateLogo);
		}

		public void AnimatePacksFlying(int numVisiblePacks, bool forceImmediate, float delay, bool showAsSingleStack, bool waitForLogo)
		{
			method_8("AnimatePacksFlying", numVisiblePacks, forceImmediate, delay, showAsSingleStack, waitForLogo);
		}

		public void HideDust()
		{
			method_8("HideDust");
		}

		public void ShowGiftDescription(int amount, bool prePurchase, bool firstPurchaseBundle)
		{
			method_8("ShowGiftDescription", amount, prePurchase, firstPurchaseBundle);
		}

		public void HideGiftDescription()
		{
			method_8("HideGiftDescription");
		}

		public void ShowHiddenBundleCard()
		{
			method_8("ShowHiddenBundleCard");
		}

		public void HideHiddenBundleCard()
		{
			method_8("HideHiddenBundleCard");
		}

		public void ResetAnimations()
		{
			method_8("ResetAnimations");
		}

		public void AnimateAndUpdateDisplay(int id, bool forceImmediate)
		{
			method_8("AnimateAndUpdateDisplay", id, forceImmediate);
		}

		public void AnimateBuyBar()
		{
			method_8("AnimateBuyBar");
		}

		public void UpdateKoreaInfoButton()
		{
			method_8("UpdateKoreaInfoButton");
		}

		public void OnKoreaInfoPressed(UIEvent e)
		{
			method_8("OnKoreaInfoPressed", e);
		}
	}
}
